import * as React from 'react';
import { createRoot } from 'react-dom/client';
import { RouterProvider } from 'react-router-dom';
import './style/index.less'; // 全局样式没生效果
import { router } from './routes/index';
import { cubetest } from '@utils/math';
// 当你使用 noParse 配置来排除对 lodash-es 的解析时，它不会经过 Webpack 的模块解析处理。
// 因此，你需要以另一种方式引入 lodash-es 中的 get 方法。
// import get from 'lodash-es/get';
// console.log(get);
cubetest(1);

// 离线缓存
// if("serviceWorker" in navigator){
//   window.addEventListener('load',()=>{
//       // service-worker.js是WorkboxWebpackPlugin生产的配置文件
//       navigator.serviceWorker.register('/service-worker.js')
//       .then(()=>{
//           console.log('serviceWorker注册成功')
//       })
//       .catch(()=>{
//           console.log('serviceWorker注册失败')
//       })
//   })
// }

const rootElement = document.getElementById('root');
const root = createRoot(rootElement);

// 测试监听热更新模块
if (module.hot) {
  module.hot.accept('@pages/Tsparticles', () => {
    console.log('捕获到Tsparticles的变化...');
  });
}

root.render(
  <React.StrictMode>
    <React.Suspense fallback={<h2>Loading...</h2>}>
      <RouterProvider router={router} />
    </React.Suspense>
  </React.StrictMode>
);
